// pages/medetail/meorder/meorder.js
import {meorderapi,payorderapi,CancelOrderapi,ordercompleteapi,urgeorderapi} from "../../../utils/api"
import utils from "../../../utils/util"
Page({

    /**
     * 页面的初始数据
     */
    data: {
        meorder:0,//切换状态的id
        orderlist:[],//订单的数据
        shopname:"",//商家的信息
        page:1,//请求的页码
        total:"",//每一个状态的数据总数
        has: false,//数据还有没有
        orderstatus:""//订单状态
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
    this.setData({
        meorder:options.id,
        page:1,
        total:"",
        orderlist:[]
    })
    var order_status = ""
    if(options.id){
        order_status = options.id-1
    }else{
        order_status = options-1
    }
    var data= {
        order_status:order_status,
        page_size:10,
        page:this.data.page
    }
    this.getorder(data)
    },
    // 订单状态的数据请求
    async getorder(data){
        console.log(data);
        var _that = this
        const res = await meorderapi(data)
        wx.hideLoading()
        if(res.data.code == 200){
            console.log(res.data.data.order);
            console.log(res.data.data.order.data);
            _that.setData({
                orderstatus:res.data.data.order,
                total:res.data.data.order.total,
                orderlist:[..._that.data.orderlist,...res.data.data.order.data],
                shopname:res.data.data.mch
            })
        }else{
            utils.wxshowtoast("数据请求失败")
            _that.setData({
                orderlist:[]
            })
        }
        // 判断第一页只有几条数据的情况
        if(this.data.orderlist.length<10){
            this.setData({
                has:true
            }) 
        }   
    },
    // 数据上啦加载
    newsscroll(){
        console.log(this.data.total);
        let data = {
			page_size: 10,
			order_status: this.data.meorder-1,
			page: ++this.data.page
        }
        console.log(data);
        if(this.data.total===this.data.orderlist.length){
            this.setData({
                has:true
            }) 
            return
        }
        console.log(0);
        this.getorder(data)
    },
    // 切换订单的状态
    orderbtn(e){
    this.setData({
        meorder:e.currentTarget.dataset.id,
        page:1,
        orderlist:[],
        has: false
    })
    var data = {
        order_status:e.currentTarget.dataset.id-1,
        page_size:10,
        page:this.data.page
    }
    this.getorder(data)
    },
    //催发货
    async urgefn(e){
        const res = await urgeorderapi({order_id:e.currentTarget.dataset.id})
        console.log(res.data.data);
        if(res.data.code ==200){
            utils.wxshowtoast(res.data.msg)
        }else{
            utils.wxshowtoast(res.data.msg)
        }
    },
    // 取消订单
   async CancelOrderfn(e){
    const res = await CancelOrderapi({order_id:e.currentTarget.dataset.id})
        wx.hideLoading()
    if(res.data.code ==200){
        // 支付成功跳到待发货
        this.setData({
            meorder:1
        })
        this.onLoad(1)
        utils.wxshowtoast("订单已取消")
    }else{
        utils.wxshowtoast("订单取消失败")
    }
    },
    // 立即支付
   async PayNowfn(e){
    console.log(e.currentTarget.dataset.id);
    const res = await payorderapi({order_id:e.currentTarget.dataset.id})
    if(res.data.code == 400){
        wx.hideLoading()
        utils.wxshowtoast("余额不足，请充值")
        wx.redirectTo({
        url: '/pages/medetail/balance/balance',
        })
    }else if(res.data.code ==200){
        wx.hideLoading()
        utils.wxshowtoast("支付成功")
        // 支付成功跳到待发货
        this.setData({
            meorder:2
        })
        this.onLoad(2)
    }else{
        wx.hideLoading()
        utils.wxshowtoast(res.data.msg)
    }
    },
    // 确认收货
   async completefn(e){
       const res = await ordercompleteapi({order_id:e.currentTarget.dataset.id})
        console.log(e.currentTarget.dataset.id);
        wx.hideLoading()
        if(res.data.code ==200){
            // 支付成功跳到待发货
            this.setData({
                meorder:3
            })
            this.onLoad(3)
            utils.wxshowtoast("订单已完成")
        }else{
            utils.wxshowtoast("订单确认失败")
        }
    },
    // 订单详情的跳转
    orderdetail(e){
        wx.navigateTo({
          url: `/pages/medetail/orderdetail/orderdetail?id=${e.currentTarget.dataset.id}&orderstatus=${this.data.orderstatus.current_order_status}`,
        })
    },
    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})